// Copyright Epic Games, Inc. All Rights Reserved.

#pragma once

#include "GameFramework/CheatManager.h"

#include "LyraBotCheats.generated.h"

class ULyraBotCreationComponent;
class UObject;
struct FFrame;

/** 与机器人相关的作弊功能 */
UCLASS(NotBlueprintable)
class ULyraBotCheats final : public UCheatManagerExtension
{
	GENERATED_BODY()

public:
	ULyraBotCheats();

	/**
	 * 添加一个机器人玩家
	 */
	UFUNCTION(Exec, BlueprintAuthorityOnly)
	void AddPlayerBot();

	/**
	 * 移除一个随机的机器人玩家
	 */
	UFUNCTION(Exec, BlueprintAuthorityOnly)
	void RemovePlayerBot();

private:
	/**
	 * 获取机器人创建组件
	 * @return 指向机器人创建组件的指针，如果未找到则返回nullptr
	 */
	ULyraBotCreationComponent* GetBotComponent() const;
};